#pragma once

#include "../SGD Wrappers/SGD_Math.h"
#include "../SGD Wrappers/CSGD_Direct3D.h"

class Emitter;

class Particle
{
	bool isActive;
	float curPosX;
	float curPosY;
	tVector2D curVelocity;
	float curRotation;
	float curScale;
	float timeAlive;
	float lifetime;
	Emitter* emitter;
	int ImageID;
	float ImageWidth;
	float ImageHeight;
	D3DCOLOR curColor;
	float rotupdate;
	float scaleupdate;
	int iclra, iclrr, iclrg, iclrb;
	int fclra, fclrr, fclrg, fclrb;

public:
	Particle( void );
	~Particle( void );

	void Initalize();
	void Update(float deltaTime);
	void Render() const;

	void SetEmitter( Emitter* Owner );
	void SetActive( bool active ) { isActive = active; }
	
	bool GetActive( void ) const { return isActive; }
};

